package com.dys.entity;

import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;

import java.time.LocalDateTime;

/**
 * @Author: 疾风
 * @ClassName: SysUser
 * @Description: 用户实体
 * @CreateDate: 2025/01/08
 * @Version: v1.0.0
 */
@Table(value = "sys_user")
public class SysUser {
    @Id(keyType = KeyType.Auto)
    private Long id;

    private String nickName;

    private String userName;


    private String password;

    private String userGender;

    private String status;


    private String otpSecret;


    private String userPhone;


    private String userEmail;


    private LocalDateTime lastLoginTime;


    private String lastLoginIp;

    public SysUser() {
    }

    public SysUser(Long id, String nickName, String userName, String password, String userGender, String status, String otpSecret, String userPhone, String userEmail, LocalDateTime lastLoginTime, String lastLoginIp) {
        this.id = id;
        this.nickName = nickName;
        this.userName = userName;
        this.password = password;
        this.userGender = userGender;
        this.status = status;
        this.otpSecret = otpSecret;
        this.userPhone = userPhone;
        this.userEmail = userEmail;
        this.lastLoginTime = lastLoginTime;
        this.lastLoginIp = lastLoginIp;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getUserGender() {
        return userGender;
    }

    public void setUserGender(String userGender) {
        this.userGender = userGender;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getOtpSecret() {
        return otpSecret;
    }

    public void setOtpSecret(String otpSecret) {
        this.otpSecret = otpSecret;
    }

    public String getUserPhone() {
        return userPhone;
    }

    public void setUserPhone(String userPhone) {
        this.userPhone = userPhone;
    }

    public String getUserEmail() {
        return userEmail;
    }

    public void setUserEmail(String userEmail) {
        this.userEmail = userEmail;
    }

    public LocalDateTime getLastLoginTime() {
        return lastLoginTime;
    }

    public void setLastLoginTime(LocalDateTime lastLoginTime) {
        this.lastLoginTime = lastLoginTime;
    }

    public String getLastLoginIp() {
        return lastLoginIp;
    }

    public void setLastLoginIp(String lastLoginIp) {
        this.lastLoginIp = lastLoginIp;
    }

    @Override
    public String toString() {
        return "SysUser{" +
                "id=" + id +
                ", nickName='" + nickName + '\'' +
                ", userName='" + userName + '\'' +
                ", password='" + password + '\'' +
                ", userGender='" + userGender + '\'' +
                ", status='" + status + '\'' +
                ", otpSecret='" + otpSecret + '\'' +
                ", userPhone='" + userPhone + '\'' +
                ", userEmail='" + userEmail + '\'' +
                ", lastLoginTime=" + lastLoginTime +
                ", lastLoginIp='" + lastLoginIp + '\'' +
                '}';
    }
}
